package com.stylefeng.guns.modular.util;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

public class SplitUtil {
public Map<String,Integer[]> splitToMap(List<String> list){
			
		List<String[]> listData1=new ArrayList<String[]>();
		
		//第一步数据库数据解析
		for(int i=0;i<list.size();i++){
			String string = list.get(i);
			String[] split = string.split("[；;]");
			listData1.add(split);
		}
		
		
		// 第二部数据解析
		List<String[]> listData2=new ArrayList<String[]>();
			for(int k=0;k<listData1.get(0).length;k++){
				String[] data2=new String[listData1.size()];
				for(int i=0;i<listData1.size();i++){					
						data2[i]=listData1.get(i)[k]+"";
						//System.out.println(data2[i]);
					}
				listData2.add(data2);
				
			
			}
			
		for(String[] strs1:listData2){
			for(String s:strs1){
				//System.out.println("遍历第二步解析结果："+s);
			}
		}
		//第三步解析
		Map<String,Integer[]> dataMap=new LinkedHashMap<String, Integer[]>();
		for(int i=0;i<listData2.size();i++){
			String[] data2=listData2.get(i);
			Integer[] intArr=new Integer[data2.length];
			String key="";
			for(int j=0;j<intArr.length;j++){
				//System.out.println(data2[j]);
				String[] strs=data2[j].split("[:：]");
				
				key=strs[0];
				
				intArr[j]=Integer.valueOf(strs[1]);
			}
			dataMap.put(key, intArr);
			
		}
		
		for (Entry<String, Integer[]> entry : dataMap.entrySet()) {  
			Integer[] intArr=new Integer[dataMap.size()];
		    //System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());  
		  String valuestr="";
		  for(Integer s:entry.getValue()){
			  valuestr+=s+",";
		  }
		  //System.out.println("Key = " + entry.getKey() + ", Value = " + valuestr);  
		}
		return dataMap;  
	
  }	
		
}
